/**
 * 
 */
package cn.com.sbell.vss.util;

import java.util.Map;

import org.apache.commons.collections.map.LinkedMap;

public class SynchronizedLinkedMap {
	private LinkedMap map = new LinkedMap();

	synchronized public void clear() {
		map.clear();
	}

	synchronized public Object get(int index) {
		return map.get(index);
	}

	synchronized public Object get(Object key) {
		return map.get(key);
	}

	synchronized public Object getValue(int index) {
		return map.getValue(index);
	}

	synchronized public boolean isEmpty() {
		return map.isEmpty();
	}

	synchronized public Object put(Object key, Object value) {
		return map.put(key, value);
	}

	synchronized public void putAll(Map map) {
		map.putAll(map);
	}

	synchronized public Object remove(int index) {
		return map.remove(index);
	}

	synchronized public Object remove(Object key) {
		return map.remove(key);
	}

	synchronized public int size() {
		return map.size();
	}

	public String toString() {
		synchronized (this) {
			return "SynchronizedLinkedMap: " + map.toString();
		}
	}
}